home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1996 March
/
EnigmA AMIGA RUN 05 (1996)(G.R. Edizioni)(IT)[!][issue 1996-03][Skylink CD IV].iso
/
earcd
/
program
/
mui32dev.lha
/
MUI
/
Developer
/
Modula
/
txt
/
MuiSupport.mod
< prev
Wrap
Text File
|
1995-12-15
|
2KB
|
111 lines
IMPLEMENTATION MODULE MuiSupport;
(*$ NilChk := FALSE *)
(*$ EntryClear := FALSE *)
(*$ LargeVars := FALSE *)
(*$ StackParms := FALSE *)
(*$ DEFINE Locale:=FALSE *)
(* MuiSupport 2.0
** converted by C.Scholz
**
** HISTORY :
**
** 22.10.1993 : changed fail, it now does not use Terminal anymore.
** Instead it uses Arts.Requester
** (inspired by Michael Suelman)
**
**/// "$Log: MuiSupport.mod $
* Revision 1.2 1995/12/15 16:37:53 olf
* - applied changes from Stefan Schulz
* - cleanup of IMPORT section
*"
# Revision 1.1 1995/09/25 15:32:52 olf
# Initial revision
#
# Revision 1.6 1994/08/16 20:33:19 Kochtopf
# fail bei +LOCALE berichtigt, so dass der String nicht auf 0C, sondern
# auf NIL getestet wird.
#
# Revision 1.5 1994/08/11 17:00:11 Kochtopf
# *** empty log message ***
#
# Revision 1.4 1994/02/09 14:50:03 Kochtopf
# Versionsnummer in 2.0 geaendert.
#
# Revision 1.3 1994/02/02 09:37:18 Kochtopf
# app bei fail in VAR-Parameter geaendert.
#
# Revision 1.2 1994/02/01 16:49:10 Kochtopf
# kleine Veraenderungen.
#
**\\\
**
*)
FROM SYSTEM IMPORT ASSEMBLE, ADDRESS, ADR;
FROM Arts IMPORT StrPtr, returnVal, Exit, Requester;
FROM MuiD IMPORT APTR ;
IMPORT
ml : MuiL,
R ;
PROCEDURE DoMethod(obj{R.A2} : APTR; msg{R.A1} : APTR);
(*$ EntryExitCode:=FALSE *)
BEGIN
ASSEMBLE ( MOVEA.L -4(A2), A0
MOVE.L 8(A0),-(A7)
RTS
END );
END DoMethod;
PROCEDURE DOMethod(obj{R.A2} : APTR; msg{R.A1} : APTR) : LONGINT;
(*$ EntryExitCode:=FALSE *)
BEGIN
ASSEMBLE ( MOVEA.L -4(A2), A0
MOVE.L 8(A0),-(A7)
RTS
END );
END DOMethod;
(*****************)
(* Fail Function *)
(*****************)
(*$ IF Locale *)
PROCEDURE fail(VAR app : APTR; str : StrPtr);
(*$ ELSE *) (*$ CopyDyn := FALSE *)
PROCEDURE fail(VAR app : APTR; str : ARRAY OF CHAR);
(*$ ENDIF *)
VAR
Result : BOOLEAN;
BEGIN
IF app#NIL THEN ml.mDisposeObject(app); app:=NIL; END;
(*$ IF Locale *)
IF str # NIL THEN
Result:=Requester(ADR("MUI-Request"),str,NIL,ADR("Oh..."));
(*$ ELSE *)
IF str[0]#0C THEN
Result:=Requester(ADR("MUI-Request"),ADR(str),NIL,ADR("Oh..."));
(*$ ENDIF *)
Exit(20);
ELSE
Exit(0);
END;
END fail;
END MuiSupport.